#include "abstract_product_a.h"

#include <iostream>

AbstractProductA::AbstractProductA()
{}

AbstractProductA::~AbstractProductA()
{}

ProductA_1::ProductA_1()
{
	std::cout << "create ProductA_1 instance" << std::endl;
}

ProductA_1::~ProductA_1()
{
	std::cout << "release ProductA_1 instance" << std::endl;
}

void ProductA_1::OperationA()
{
	std::cout << "ProductA_1 OperationA" << std::endl;
}

ProductA_2::ProductA_2()
{
	std::cout << "create ProductA_2 instance" << std::endl;
}

ProductA_2::~ProductA_2()
{
	std::cout << "release ProductA_2 instance" << std::endl;
}

void ProductA_2::OperationA()
{
	std::cout << "ProductA_2 OperationA" << std::endl;
}